from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC


# 打开游览器
driver = webdriver.Chrome()
# 请求网址
driver.get('https://www.baidu.com')
# TODO 设置隐式等待
# 一个driver周期内只需要一个等待，保证元素加载完成，需要渲染新页面的时候再设置
# driver.implicitly_wait(10)
# 定位元素
# print(driver.find_element(By.ID, 'kw').get_attribute('outerHTML'))

# TODO 设置显示等待
# WebDriverWait(driver, 超时时长, 调用频率, 忽略异常).until(可执行方法, 超时时返回的信息)
# EC.presence_of_element_located(*locator) 对元组或者列表拆包
kw = WebDriverWait(driver,10).until(EC.presence_of_element_located(('id','kw')))
print(kw)
# 退出游览器
driver.quit()